System and method for providing an intelligent goal recommendation for activity level

ABSTRACT

A system for providing an intelligent goal recommendation for activity level includes an apparatus for providing an intelligent goal recommendation for activity level. The apparatus includes a movement monitoring module that monitors a movement to determine an activity score associated with the movement. The apparatus also includes a fatigue level module that detects a fatigue level. In addition, the apparatus includes an activity level recommendation module that recommends an activity level based on the fatigue level and an archive. The archive includes historical information about the movement and the fatigue level.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation-in-part of and claims the benefit of U.S. patent application Ser. No. 14/137,734, filed Dec. 20, 2013, titled “System and Method for Providing a Smart Activity Score,” which is a continuation-in-part of U.S. patent application Ser. No. 14/062,815, filed Oct. 24, 2013, titled “Wristband with Removable Activity Monitoring Device.” The contents of both the Ser. No. 14/137,734 application and the Ser. No. 14/062,815 application are incorporated herein by reference.

TECHNICAL FIELD

The present disclosure relates generally to fitness monitoring devices, and more particularly to systems and methods for providing an intelligent goal recommendation for activity level.

DESCRIPTION OF THE RELATED ART

Previous generation movement monitoring and fitness tracking devices generally enabled only a recommendation of activity that accounts for desired calories burned or for past performance. Currently available fitness tracking devices now add functionality that customizes activity recommendations to prepare for an upcoming event. One issue with currently available fitness tracking devices is that they do not track or respond to user fatigue levels or recovery levels. Another issue is that currently available solutions do not recommend activity levels based on user fatigue levels or recovery levels.

BRIEF SUMMARY OF THE DISCLOSURE

In view of the above drawbacks, there exists a long-felt need for fitness monitoring devices that track and respond to user fatigue levels. Further, there is a need for fitness monitoring devices that provide recommendations for activity levels based on the user's fatigue levels and based on the user's learned tendencies and capabilities.

Embodiments of the present disclosure provide systems and methods for providing an intelligent goal recommendation for activity level.

On embodiment involves an apparatus for providing an intelligent goal recommendation for activity level. The apparatus includes a movement monitoring module that monitors a movement to determine an activity score associated with the movement. The apparatus further includes a fatigue level module that detects a fatigue level. The apparatus also includes an activity level module that recommends an activity level based on the fatigue level and an archive. The archive includes historical information about the movement and the fatigue level.

In one embodiment, the archive includes normative data on activity scores and fatigue, and the activity level recommendation module recommends the activity level based on the normative data. The activity level recommendation module, in another embodiment, recommends the activity level in anticipation of a future activity. The activity level recommendation module anticipates the future activity based on the archive. In one instance, the activity level recommendation module recommends the activity level based on the amount of sleep monitored by the movement monitoring module the previous night.

The recommended activity level, in one embodiment, is based on the user's learned tendencies. In another embodiment, the recommended activity level is based on the user's learned capabilities. The recommended activity level, in one embodiment, is a numerical value. In other illustrative examples, the recommended activity level is one of the following: not active, slightly active, moderately active, highly active, and extremely active. The apparatus, in one embodiment, includes a scheduling module that reminds the user of an upcoming activity and adjusts the recommended activity level based on the upcoming activity.

The disclosure, in one embodiment, involves a method for providing an intelligent goal recommendation for activity level. The method includes monitoring a movement to determine an activity score associated with the movement. The method also includes detecting a fatigue level. In addition, the method includes recommending an activity level based on the fatigue level and an archive. The archive includes historical information about the movement and the fatigue level.

In one embodiment, the archive includes normative data on activity scores and fatigue, and the recommended activity level is based on the normative data. In another embodiment, the activity level is recommended in anticipation of a future activity, which is anticipated based on the archive. The recommended activity level, in a further embodiment, is based on an amount of sleep monitored for the previous night. The recommended activity level, in one instance, is based on an input from the user. The input specifies a targeted aggressiveness for achieving a performance goal of the user.

The recommended activity level, in one embodiment of the method, is based on a user's learned tendencies. In another embodiment, the recommended activity level is based on the user's learned capabilities. The recommended activity level, in one embodiment of the method, is a numerical value. In other illustrative examples of the method, the recommended activity level is of the following: not active, slightly active, moderately active, highly active, and extremely active. In one embodiment, the method includes reminding the user of a scheduled upcoming activity. The method, in another embodiment, includes adjusting the recommended activity level based on the scheduled upcoming activity.

One embodiment includes a system for providing an intelligent goal recommendation for activity level. The system includes a processor and at least one computer program residing on the processor. The computer program is stored on a non-transitory computer readable medium having computer executable program code embodied thereon. The computer executable program code is configured to monitor a movement to determine an activity score associated with the movement. The computer executable program code is further configured to detect a fatigue level. In addition, the computer executable program code is configured to recommend an activity level based on the fatigue level and an archive. The archive includes historical information about the movement and the fatigue level.

Other features and aspects of the disclosure will become apparent from the following detailed description, taken in conjunction with the accompanying drawings, which illustrate, by way of example, the features in accordance with embodiments of the disclosure. The summary is not intended to limit the scope of the disclosure, which is defined solely by the claims attached hereto.

BRIEF DESCRIPTION OF THE DRAWINGS

The present disclosure, in accordance with one or more various embodiments, is described in detail with reference to the following figures. The figures are provided for purposes of illustration only and merely depict typical or example embodiments of the disclosure.

FIG. 1 illustrates a cross-sectional view of the wristband and electronic modules of an example activity monitoring device.

FIG. 2 illustrates a perspective view of an example activity monitoring device.

FIG. 3 illustrates a cross-sectional view of an example assembled activity monitoring device.

FIG. 4 illustrates a side view of an example electronic capsule.

FIG. 5 illustrates a cross-sectional view of an example electronic capsule.

FIG. 6 illustrates perspective views of wristbands as used in one embodiment of the disclosed activity monitoring device.

FIG. 7 illustrates an example system for providing an intelligent goal recommendation for activity level.

FIG. 8 illustrates an example apparatus for providing an intelligent goal recommendation for activity level.

FIG. 9 illustrates another example apparatus for providing an intelligent goal recommendation for activity level.

FIG. 10A is an operation flow diagram illustrating an example method for providing an intelligent goal recommendation for activity level.

FIG. 10B is an example of a metabolic loading table.

FIG. 10C is an example of an activity intensity library.

FIG. 11 is an operational flow diagram illustrating an example method for providing an intelligent goal recommendation for activity level.

FIG. 12 illustrates an example computing module that may be used to implement various features of the systems and methods disclosed herein.

The figures are not intended to be exhaustive or to limit the disclosure to the precise form disclosed. It should be understood that the disclosure can be practiced with modification and alteration, and that the disclosure can be limited only by the claims and the equivalents thereof.

DETAILED DESCRIPTION

The present disclosure is directed toward systems and methods for providing an intelligent goal recommendation for activity level. The disclosure is directed toward various embodiments of such systems and methods. In one such embodiment, the systems and methods are directed to a device that provides an intelligent goal recommendation for activity level. According to some embodiments of the disclosure, the device may be an electronic capsule embedded in and removable from an attachable device that may be attached to a user. In one embodiment, the attachable device is a wristband. In one embodiment, the attachable device includes an activity monitoring device.

FIG. 1 is a diagram illustrating a cross-sectional view of an exemplary embodiment of an activity monitoring device. Referring now to FIG. 1, an activity monitoring device comprises electronic capsule 200 and wristband 100. Electronic capsule 200 comprises wrist biosensor 210, finger biosensor 220, battery 230, one or more logic circuits 240, and casing 250.

In some embodiments, one or more logic circuits 240 comprise an accelerometer, a wireless transmitter, and circuitry. Logic circuits 240 may further comprise a gyroscope. Logic circuits 240 may be configured to process electronic input signals from the biosensors and the accelerometer, store the processed signals as data, and output the data using the wireless transmitter. The transmitter is configured to communicate using available wireless communications standards. For example, in some embodiments, the wireless transmitter is a BLUETOOTH transmitter, a Wi-Fi transmitter, a GPS transmitter, a cellular transmitter, or some combination thereof. In an another embodiment, the wireless transmitter further comprises a wired interface (e.g. USB, fiber optic, HDMI, etc.) for communicating stored data.

Logic circuits 240 are electrically coupled to wrist biosensor 210 and finger biosensor 220. In addition, logic circuits 240 are configured to receive and process a plurality of electric signals from each of wrist biosensor 210 and finger biosensor 220. In some embodiments, the plurality of electric signals comprise an activation time signal and a recovery time signal such that logic circuits 240 may process the plurality of signals to calculate an activation recovery interval equal to the difference between the activation time signal and the recovery time signal. In some embodiments, the plurality of signals comprise electro-cardio signals from a heart, and logic circuits 240 process the electro-cardio signals to calculate and store an RR-interval, and the RR-interval is used to calculate and store a heart rate variability (HRV) value. Here, the RR-interval is equal to the delta in time between two R-waves, where the R-waves are the electro-cardio signals generated by a ventricle contraction in the heart.

In some embodiments, logic circuits 240 further detect and store metrics such as the amount of physical activity, sleep, or rest over a recent period of time, or the amount of time without physical activity over a recent period of time. Logic circuits 240 may then use the HRV, or the HRV in combination with said metrics, to calculate a fatigue level. For example, logic circuits 240 may detect the amount of physical activity and the amount of sleep a user experienced over the last 48 hours, combine those metrics with the user's HRV, and calculate a fatigue level of between 1 and 10, wherein the fatigue level may indicate the user's physical condition and aptitude for further physical activity that day. The fatigue level may also be calculated on a scale of between 1 and 100, or any other scale or range. In one embodiment, the typical fatigue level ranges from about 40 to 60. The fatigue level may also be represented on a descriptive scale; for example, low, normal, and high.

In some embodiments, finger biosensor 220 and wrist biosensor 210 are replaced or supplemented by a single biosensor. The single biosensor, in on embodiment, is an optical biosensor such as a pulse oximeter configured to detect blood oxygen saturation levels. The pulse oximeter may then output a signal to logic circuits 240 indicating a detected cardiac cycle phase, and logic circuits 240 may use cardiac cycle phase data to calculate an HRV value.

Wristband 100 comprises material 110 configured to encircle a human wrist. In one embodiment, wristband 100 is adjustable. Cavity 120 is notched on the radially inward facing side of the wristband and shaped to substantially the same dimensions as the profile of electronic capsule 200. In addition, aperture 130 is located in material 110 within cavity 120. Aperture 130 is shaped to substantially the same dimensions as the profile of finger biosensor 220. The combination of cavity 120 and aperture 130 is designed to detachably couple to electric capsule 200 such that, when electric capsule 200 is positioned inside cavity 120, finger biosensor 220 protrudes through aperture 130. Electronic capsule 200 may further comprise one or more magnets 260 configured to secure capsule 200 to cavity 120. Magnets 260 may be concealed in casing 250. Alternatively, cavity 120 may be configured to conceal magnets 260 when electronic capsule 200 detachably couples to the combination of cavity 120 and aperture 130.

Wristband 100 may further comprise steel strip 140 concealed in material 110 within cavity 120. In one embodiment, when electronic capsule 200 is positioned within cavity 120, one or more magnets 260 are attracted to steel strip 140 and pull electronic capsule 200 radially outward with respect to wristband 100. The force provided by magnets 260 may detachably secure electronic capsule 200 inside cavity 120. In alternative embodiments, electronic capsule 200 is positioned inside the wristband cavity and affixed using a form-fit, press-fit, snap-fit, friction-fit, VELCRO, or other temporary adhesion or attachment technology.

FIG. 2 illustrates a perspective view of one embodiment of the disclosed activity monitoring device, in which wristband 100 and electronic capsule 200 are unassembled. FIG. 3 illustrates a cross-sectional view of one embodiment of fully assembled wristband 100 with removable athletic monitoring device. FIG. 4 illustrates a side view of an electronic capsule 200 according to one embodiment of the disclosure. FIG. 5 illustrates a cross-sectional view of electronic capsule 200. FIG. 6 is a perspective view of two possible variants of wristband 100 according to some embodiments of the disclosure. Wristbands 100 may be constructed with different dimensions, including different diameters, widths, and thicknesses, in order to accommodate different human wrist sizes and different preferences.

In some embodiments of the disclosure, electronic capsule 200 is detachably coupled to a cavity on a shoe and/or a sock. In other embodiments, electronic capsule 200 is detachably coupled to sports equipment. For example, electronic capsule 200 may be detachably coupled to a skateboard, a bicycle, a helmet, a surfboard, a paddle boat, a body board, a hang glider, or other piece of sports equipment. In these embodiments, electronic capsule 200 is affixed to the sports equipment using magnets. In other embodiments, electronic capsule 200 is affixed using a form-fit, snap-fit, press-fit, friction-fit suction cup, VELCRO, or other technology that would be apparent to one of ordinary skill in the art.

Electronic capsule 200, in one embodiment of the disclosure, further comprises an optical sensor such as a heart rate sensor or oximeter. In this embodiment, the optical sensor is positioned to face radially inward towards a human wrist when wristband 100 is fit on the human wrist. The optical sensor may be separate from electronic capsule 200, but still detachably coupled to wristband 100 and electronically coupled to the circuit boards enclosed in electronic capsule 200. Wristband 100 and electronic capsule 200 may operate in conjunction with a system for providing an intelligent goal recommendation for activity level.

FIG. 7 is a schematic block diagram illustrating an example of system 700 for providing an intelligent goal recommendation for activity level. System 700 includes apparatus for providing intelligent goal recommendation for activity level 702, communication medium 704, server 706, and computing device 708.

Communication medium 704 may be implemented in a variety of forms. For example, communication medium 704 may be an Internet connection, such as a local area network (“LAN”), a wide area network (“WAN”), a fiber optic network, internet over power lines, a hard-wired connection (e.g., a bus), and the like, or any other kind of network connection. Communication medium 704 may be implemented using any combination of routers, cables, modems, switches, fiber optics, wires, radio, and the like. Communication medium 704 may be implemented using various wireless standards, such as Bluetooth, Wi-Fi, 4G LTE, etc. One of skill in the art will recognize other ways to implement communication medium 704 for communications purposes.

Server 706 directs communications made over communication medium 704. Server 706 may be, for example, an Internet server, a router, a desktop or laptop computer, a smartphone, a tablet, a processor, a module, or the like. In one embodiment, server 706 directs communications between communication medium 704 and computing device 708. For example, server 706 may update information stored on computing device 708, or server 706 may send information to computing device 708 in real time.

Computing device 708 may take a variety of forms, such as a desktop or laptop computer, a smartphone, a tablet, a processor, a module, or the like. In addition, computing device 708 may be a processor or module embedded in a wearable sensor, a bracelets, a smart-watch, a piece of clothing, an accessory, and so on. For example, computing device 708 may be substantially similar to devices embedded in electronic capsule 200, which may be embedded in and removable from wristband 100, as illustrated in FIG. 1. Computing device 708 may communicate with other devices over communication medium 704 with or without the use of server 706. In one embodiment, computing device 708 includes apparatus for providing intelligent goal recommendation for activity level 702. In various embodiments, apparatus 702 may be used to perform various processes described herein.

FIG. 8 is a schematic block diagram illustrating one embodiment of an apparatus for providing an intelligent goal recommendation for activity level 800. Apparatus 800 includes apparatus for providing intelligent goal recommendation for activity level 702 with movement monitoring module 802, fatigue level module 804, and activity level recommendation module 806.

Movement monitoring module 802 monitors a movement to determine an activity score associated with the movement. Movement monitoring module 802 will be described below in further detail with regard to various processes.

Fatigue level module 804 detects a fatigue level. Fatigue level module 804 will be described below in further detail with regard to various processes.

Activity level recommendation module 806 recommends an activity level based on the fatigue level and an archive. The archive includes historical information about the movement and the fatigue level. Activity level recommendation module 806 will be described below in further detail with regard to various processes. In one embodiment, the archive is stored on computing device 708.

FIG. 9 is a schematic block diagram illustrating one embodiment of apparatus 900 for providing an intelligent goal recommendation for activity level. Apparatus 900 includes apparatus for providing an intelligent goal recommendation for activity level 702 with movement monitoring module 802, fatigue level module 804, and activity level recommendation module 806. Apparatus 900 also includes scheduling module 902 that reminds a user of an upcoming activity and adjusts the recommended activity level based on the upcoming activity. Scheduling module 902 will be described below in further detail with regard to various processes.

In various embodiments, at least one of movement monitoring module 802, fatigue level module 804, activity level recommendation module 806, and scheduling module 902 is embodied in a wearable sensor, such as electronic capsule 200. Moreover, any of the modules described herein may be embodied in electronic capsule 200 or in other hardware or devices. Any of the modules described herein may connect to other modules described herein via communication medium 704.

FIG. 10A is an operational flow diagram illustrating an example of a method 1000 for providing an intelligent goal recommendation for activity level in accordance with an embodiment of the present disclosure. The operations of method 1000 recommend an activity level based on an archived movement and fatigue level, and based on a current fatigue level. Moreover, the operations of method 1000 take into account patterns of activity and fatigue level to learn the capabilities and tendencies of a user. This provides recommendations of goals for activity level that are highly tailored to the user's specific characteristics. In one embodiment, apparatus 702, wristband 100, and electronic capsule 200 perform various operations of method 1000.

At operation 1002, method 1000 monitors a movement to determine a metabolic activity score associated with the movement. The metabolic activity score may be determined from metabolic loadings. The metabolic loadings may be associated with the movement. In one embodiment, the metabolic loadings are determined by identifying a user activity type from a set of reference activity types and by identifying a user activity intensity from a set of reference activity intensities.

Method 1000, in one embodiment, determines a set of metabolic loadings according to information provided by a user (or user information). User information may include, for example, an individual's height, weight, age, gender, and geographic and environmental conditions. The user may provide the user information by, for example, a user interface of computing device 708, or of electronic capsule 200. Method 1000 may determine the user information based on various measurements. For example, method 1000 may determine a user's body fat content or body type. Or, for example, method 1000 may use an altimeter or GPS to determine the user's elevation, weather conditions in the user's environment, etc. In one instance, method 1000 obtains user information from the user indirectly. For example, method 1000 may collect user information from a social media account, from a digital profile, or the like.

In one embodiment, the user information includes a user lifestyle selected from a set of reference lifestyles. Method 1000 may prompt the user for information about the user's lifestyle (e.g., via a user interface). Method 1000 may prompt the user to determine how active the user's lifestyle is by, for example, prompting the user to select a user lifestyle from a set of reference lifestyles. In one embodiment, the reference lifestyles include a range of lifestyles from inactive, on one end, to highly active on the other end. So, for example, the reference lifestyles that the user may select from may include sedentary, mildly active, moderately active, and heavily active.

Method 1000, in one embodiment, determines the user lifestyle from the user as an initial matter. In a further embodiment, method 1000 periodically prompts the user to select a user lifestyle. In this fashion, the user lifestyle selected may be aligned with the user's actual activity level as the user's activity level varies over time. In a further embodiment, method 1000 updates the user lifestyle without intervention from the user.

In one embodiment, the metabolic loadings are numerical values and may represent a rate of calories burned per unit weight per unit time (e.g., having units of kcal per kilogram per hour). By way of example, the metabolic loadings can be represented in units of oxygen uptake (e.g., in milliliters per kilogram per minute). The metabolic loadings may also represent a ratio of the metabolic rate during activity (e.g., the metabolic rate associated with a particular activity type and/or an activity intensity) to the metabolic rate during rest. The metabolic loadings may, for example, be represented in a metabolic table, such as metabolic table 1050 in FIG. 10B. In one embodiment, the metabolic loadings are specific to the user information. For example, a metabolic loading may increase for a heavier user, or for an increased elevation, but may decrease for a lighter user or for a decreased elevation.

At operation 1002, in one embodiment, method 1000 determines the set of metabolic loadings based on the user lifestyle, in addition to the other user information. For example, the metabolic loadings for a user with a heavily active lifestyle may differ from the metabolic loadings for a user with a sedentary lifestyle. Method 1000 may attain greater coupling between the metabolic loadings and the user's characteristics by determining the set of metabolic loadings according to the user lifestyle.

In various embodiments, a device (e.g., computing device 708) or a module (e.g., electronic capsule 200 or a module therein) stores or provides the metabolic loadings. The metabolic loadings may be maintained or provided by server 706 or over communication medium 704. In one embodiment, a system administrator provides the metabolic loading based on a survey, publicly available data, scientifically determined data, compilation of user data, or any other source of data. Operation 1002, in various embodiments, is performed by movement monitoring module 802. In various embodiments, movement monitoring module 802 includes a metabolic loading module and a metabolic table module that determine the metabolic loading associated with the movement.

At operation 1002, method 1000, in one embodiment, maintains a metabolic table based on the user information. For example, the metabolic loadings in the metabolic table may be based on the user information from the user. In some cases, the metabolic table is maintained based on a set of standard user information, in place of or in addition to user information from the user. The standard user information may include, for example, the average fitness characteristics of all individuals being the same age as the user, the same height as the user, etc. In another embodiment, instead of maintaining the metabolic table based on standard information, if method 1000 has not obtained user information from the user, method 1000 delays maintaining the metabolic table until the user information is obtained.

As illustrated in FIG. 10B at operation 1002, in one embodiment, method 1000 maintains the metabolic table as metabolic table 1050. Metabolic table 1050 may be stored in computing device 708, for example. Metabolic table 1050 may include information such as reference activity types (RATs) 1054, reference activity intensities (RAIs) 1052, and/or metabolic loadings (MLs) 1060.

In one embodiment, RATs 1054 are arranged as rows 1058 in metabolic table 1050. Thus, each of a set of rows 1058 corresponds to different RATs 1054, and each row 1058 is designated by a row index number. For example, the first RAT row 1058 may be indexed as RAT_(—)0, the second as RAT_(—)1 and so on for as many rows as metabolic table 1050 may include.

The reference activity types may include typical activities, such as running, walking, sleeping, swimming, bicycling, skiing, surfing, resting, working, and so on. The reference activity types may also include a catch-all category, for example, general exercise. The reference activity types may also include atypical activities, such as skydiving, SCUBA diving, and gymnastics. In one embodiment, a user defines a user-defined activity by programming computing device 708 (e.g., by an interface on electronic capsule 200) with information about the user-defined activity, such as pattern of movement, frequency of pattern, and intensity of movement. The typical reference activities may be provided, for example, by metabolic table 1050.

In one embodiment, reference activity intensities 1052 are arranged as columns 1056 in metabolic table 1050, and metabolic table 1050 includes columns 1056, each corresponding to different RAIs 1052. Each column 1056 is designated by a different column index number. For example, the first RAI column 1056 may be indexed as RAI_(—)0, the second as RAI_(—)1 and so on for as many columns as metabolic table 1050 may include.

The reference activity intensities, in one illustrative case, include a numeric scale. For example, the reference activity intensities may include numbers ranging from one to ten (representing increasing activity intensity). The reference activities may also be represented as a range of letters, colors, and the like. The reference activity intensities may be associated with the vigorousness of an activity. In other embodiments, the reference activity intensity are represented by ranges of heart rates or breathing rates.

In one embodiment, metabolic table 1050 includes metabolic loadings, such as metabolic loading 1060. Each metabolic loading 1060 corresponds to a reference activity type 1058 of the reference activity types 1054 and a reference activity intensity 1056 of the reference activity intensities 1052. Each metabolic loading 1060 may be identified by a unique combination of reference activity type 1054 and reference activity intensity 1052. For example, in the column and row arrangement discussed above, one of the reference activity types 1054 of a series of rows 1058 of reference activity types, and one of the reference activity intensities 1052 of a series of columns 1056 of reference activity intensities may correspond to a particular metabolic loading 1060. In such an arrangement, each metabolic loading 1060 may be identifiable by only one combination of reference activity type 1058 and reference activity intensity 1056.

This concept is illustrated in FIG. 10B. As shown, each metabolic loading 1060 is be designated using a two-dimensional index, with the first index dimension corresponding to the row 1058 number and the second index dimension corresponding to the column 1056 number of the metabolic loading 1060. For example, in FIG. 10B, ML_(—)2,3 has a first dimension index of 2 and a second dimension index of 3. ML_(—)2,3 corresponds to the row 1058 for RAT_(—)2 and the column 1056 for RAI_(—)3. Any combination of RAT_M and RAIN may identify a corresponding ML_M,N in metabolic table 1050, where M is any number corresponding to a row 1058 number in metabolic table 1050 and N is any number corresponding to a column 1056 number in metabolic table 1050. For example, the reference activity type RAT_(—)3 may be “surfing,” and the reference activity intensity RAI_(—)3 may be “4.” This combination in the metabolic table 1050 corresponds to metabolic loading 1060 ML_(—)3,3, which may, for example, represent 5.0 kcal/kg/hour (a typical value for surfing). In various embodiments, operation 1002 is performed by movement monitoring module 802. In some embodiments, operation 1002 is performed by a metabolic table module.

Referring again to operation 1002 of method 1000, in one embodiment, the movement is monitored by location tracking (e.g., Global Positioning Satellites (GPS), or a location tracking device connected via communication medium 704). In some instances, the general location of the user as well as specific movements of the user's body are monitored. For example, method 1000 may monitor the movement of the user's leg in x, y, and z directions (e.g., by an accelerometer or gyroscope). In one embodiment, method 1000 receives an instruction regarding which body part is being monitored. For example, method 1000 may receive an instruction that the movement of a user's wrist, ankle, head, or torso is being monitored.

Method 1000, in various embodiments, monitors the movement of the user and determines a pattern of the movement (pattern). For example, method 1000 may detect the pattern by an accelerometer or gyroscope. The pattern may be a repetition of a motion or a similar motion monitored at operation 1002. In one embodiment, the pattern is a geometric shape (e.g., a circle, line, oval) of repeated motion that is monitored. In some cases, the repetition of a motion in a geometric shape is not repeated consistently over time, but is maintained for a substantial proportion of the repetitions of movement. For example, one occurrence of elliptical motion in a repetitive occurrence (or pattern) of ten circular motions may be monitored and determined to be a pattern of circular motion.

In further embodiments, the geometric shape of the pattern of movement is a three dimensional (3D) shape. For example, the pattern of movement associated with the wrist of a person swimming the butterfly stroke may be monitored and analyzed into a geometric shape in three dimensions. The pattern may be complicated, but it may be described in a form that method 1000 can recognize when performing operation 1002. Such form may include computer code that describes the spatial relationship of a set of points, along with changes in acceleration forces that are experienced along those points as, for example, a sensor travels throughout the pattern.

At operation 1002, in some instances, monitoring the pattern includes monitoring the frequency with which the pattern is repeated (or pattern frequency). The pattern frequency may be derived from a repetition period of the pattern (or pattern repetition period). The pattern repetition period may be the length of time elapsing from when a device or sensor passes through a certain point in a pattern and when the device or sensor returns to that point when the pattern is repeated. For example, the sensor may be at point x, y, z at time t_(—)0. The device may then move along the trajectory of the pattern, eventually returning to point x, y, z at time t_(—)1. The pattern repetition period would be the difference between t_(—)1 and t_(—)0 (e.g., measured in seconds). For example, method 1000 may determine that the pattern is a circle and that the circle pattern repetition period is one second. The pattern frequency may be the inverse of the pattern repetition period, and may have units of cycles per second. When the pattern repetition period is, for example, two seconds, the pattern frequency would be 0.5 cycles per second.

In various embodiments, monitoring the movement at operation 1002 includes monitoring the velocity at which the user is moving (or the user velocity). For example, the user velocity may have units of kilometers per hour. Method 1000, in one embodiment, monitors the user's location information to determine user velocity. Method 1000 may do this by GPS, through communication medium 704, and so on. The user velocity may be distinguished from the speed of the pattern (or pattern speed). For example, the user may be running at a user velocity 10 km/hour, but the pattern speed of the user's wrist may be 20 km/hour at a given point (e.g., as the wrist moves from behind the user to in front of the user). At operation 1002, the pattern speed may be monitored using, for example, an accelerometer or gyroscope.

At operation 1002, in one embodiment, method 1000 monitors the user's altitude. This may be done, for example, using an altimeter. Method 1000 may do this using other means, such as use location information, information entered by the user, etc. In another embodiment, at operation 1002, method 1000 monitors an impact the user has with an object. For example, method 1000 may monitor the impact of the user's feet with ground. Method 1000 may do this using, for example, an accelerometer or gyroscope.

In various embodiments, method 1000 measures the ambient temperature. For example, method 1000 may associate a group of reference activity types with bands of ambient temperature. For example, when the ambient temperature is zero degrees Celsius, activities such as skiing, sledding, and ice climbing are appropriate selections for reference activity types, whereas surfing, swimming, and beach volleyball may be inappropriate. In further embodiments, the humidity may be measured (e.g., by a hygrometer). In further embodiments, at operation 1002, method 1000 measures the pattern duration, that is, the length of time for which particular movement pattern is sustained.

Method 1000, in some cases, performs operation 1002, monitoring the movement, by using a sensor configured to be attached to a user's body. Such sensors may include a gyroscope or accelerometer to detect movement, and a heart-rate sensor, each of which may be embedded in a wristband that a user can wear on the user's wrist or ankle, such as wristband 100. Additionally, various modules and sensors that may be used to perform operation 1002 may be embedded in an electronic capsule, such as electronic capsule 200. In various embodiments, operation 1002 is performed by movement monitoring module 802.

In one embodiment, operation 1002 involves determining the user activity type from the set of reference activity types. Once detected, the pattern may be used to determine the user activity type from a set of reference activity types. In one illustrative instance, each reference activity type is associated with a reference activity type pattern. The user activity type may be determined to be the reference activity type that has a reference activity type pattern that matches the pattern measured at operation 1002. In one embodiment, the pattern that matches the reference activity type pattern will not be an exact match, but will be substantially similar.

The patterns, in other embodiments, will not even be substantially similar, but method 1000 will determine that the patterns match because they are the most similar of any patterns available. For example, the reference activity type may be determined such that the difference between the pattern of movement corresponding to this reference activity type and the pattern of movement is less than a predetermined range or ratio. In one embodiment, the pattern is looked up (for a match) in a reference activity type library. The reference activity type library may be included in the metabolic table. For example, the reference type library may include rows in a table such as the RAT rows 1058.

In further embodiments, operation 1002 involves using the pattern frequency to determine the user activity type from the set of reference activity types. For example, several reference activity types may be associated with similar patterns (e.g., because the wrist moves in a similar pattern when running versus walking). Method 1000 may measure a pattern and not be able to determine whether the corresponding user activity type is walking or running. Method 1000 may use the pattern frequency to determine the activity type in such an example because the pattern frequency for running may be higher than the pattern frequency for walking.

Operation 1002 involves, in one embodiment, using additional information to determine the activity type of the user. For example, the pattern for walking may be similar to the pattern for running. Method 1000 may associate the reference activity of running with higher user velocities and may associate the reference activity of walking with lower user velocities. Method 1000 may use the velocity measured at operation 1002 to determine between two reference activity types having similar patterns.

In another embodiment, operation 1002 involves monitoring the impact the user has with the ground, and determine that, because the impact is larger, the activity type is running rather than walking. Moreover, if there is no impact, method 1000 may determine that the activity type is cycling (or other activity where there is no impact). In another embodiment, method 1000 uses the humidity measurement to determine whether the activity is a water sport, that is, whether the activity is being performed in the water. Method 1000 may narrow the reference activity types to those that are performed in the water, from which narrowed set of reference activity types the user activity type may be determined. In another embodiment, method 1000 uses the temperature measurement to determine the activity type.

Operation 1002, in another case, entails instructing the user to confirm the user activity type. For example, a user interface may be provided such that the user may confirm whether a displayed user activity type is correct. In another embodiment, a user interface is provided such that the user may select the user activity type from a group of activity types.

In further embodiments, at operation 1002, method 1000 determines a statistical likelihood for of choices for user activity type and provide the possible user activity types in such a sequence that the most likely user activity type is listed first (and then in descending order of likelihood). For example, method 1000 may detect a pattern of movement and determine that, based on the pattern, the pattern frequency, the temperature, and so on, there is an 80% chance the user activity type is running, a 15% chance the user activity type is walking, and a 5% chance the user activity is dancing. Method 1000 may then, via a user interface, list these possible user activities such that the user may select the activity type the user is performing. In various embodiments, portions of operation 1002 are performed by a metabolic loading module.

At operation 1002, in one embodiment, method 1000 determines the user activity intensity from a set of reference activity intensities. Method 1000 may determine the user activity intensity in a variety of ways. In one embodiment, method 1000 associates the repetition period (or pattern frequency) and user activity type (UAT) with a reference activity intensity library to determine the user activity intensity that corresponds to a reference activity intensity. FIG. 10C illustrates one embodiment whereby this aspect of operation 1002 is accomplished, including reference activity intensity library 1080. Library 1080 is organized by rows 1088 of reference activity types 1084 and columns 1086 of pattern frequencies 1082. In FIG. 10C, library 1080 is implemented in a table. Library 1080 may, however, be implemented other ways.

In one embodiment, at operation 1002, method 1000 determines that, for user activity type 1084 UAT_(—)0 performed at pattern frequency 1082 F_(—)0, the reference activity intensity 1090 is RAI_(—)0,0. For example, method 1000 may determine that UAT 1084 corresponds to the reference activity type for running. Method 1000 may also determine a pattern frequency 1082 of 0.5 cycles per second for the user activity type. Reference activity intensity library 1080 may determine, at operation 1002, that the user activity type 1084 of running at a pattern frequency 1082 of 0.5 cycles per second corresponds to a reference activity intensity 1090 of five on a scale of ten. In another embodiment, the reference activity intensity 1090 is independent of the activity type. For example, method 1000 may determine that the repetition period is five seconds, and that this corresponds to an intensity level of two on a scale of ten.

Reference activity intensity library 1080, in one embodiment, is included in metabolic table 1050. In some cases, the measured repetition period (or pattern frequency) does not correspond exactly to a repetition period for a reference activity intensity in metabolic table 1050. In such an example, the correspondence may be a best-match fit, or may be a fit within a tolerance. Such a tolerance may be defined by the user or by a system administrator, for example.

In various embodiments, operation 1002 involves supplementing the measurement of pattern frequency to help determine the user activity intensity from the reference activity intensities. For example, if the user activity type is skiing, it may be difficult to determine the user activity intensity because the pattern frequency may be erratic or otherwise immeasurable. In such an example, method 1000 may monitor the user velocity, the user's heart rate, and other indicators (e.g., breathing rate) to determine how hard the user is working during the activity. For example, higher heart rate may indicate lower activity intensity. In a further embodiment, the reference activity intensity are associated with a pattern speed (i.e., the speed or velocity at which the sensor is progressing through the pattern). A higher pattern speed may correspond to a higher user activity intensity.

Method 1000, in some instances, performs operation 1002 to determine the user activity type and the user activity intensity by using a sensor configured to be attached to the user's body. Such sensors may include, for example, a gyroscope or accelerometer to detect movement, and a heart-rate sensor, each of which may be embedded in a wristband that a user can wear on the user's wrist or ankle, such as wristband 100. Additionally, various sensors and modules that may be used to preform operation 1002 may be embedded in electronic capsule 200. In various embodiments, operation 1002 is performed by movement monitoring module 802.

Referring again to FIG. 10A, operation 1002 includes determining an activity score associated with the movement. In one embodiment, method 1000 (e.g., at operation 1002) determines a duration of the activity type at a particular activity intensity (e.g., in seconds, minutes, or hours). Method 1000 may determine the activity score by multiplying the metabolic loading by the duration of the user activity type at a particular user activity intensity. If the user activity intensity changes, method 1000 may multiply the new metabolic loading (associated with the new user activity intensity) by the duration of the user activity type at the new user activity intensity. In one embodiment, the activity score is represented as a numerical value.

Referring again to FIG. 10A, operation 1004 includes detecting a fatigue level. In one embodiment, the fatigue level is the fatigue level of the user. In one embodiment, the fatigue level is a function of recovery. In various embodiments, the fatigue level is described in terms of recovery. Method 1000 may detect the fatigue level in various ways. In one embodiment, method 1000 detects the fatigue level by measuring a heart rate variability (HRV) of a user using logic circuits 240 (discussed above in reference in to FIG. 1). For example, when the HRV is more consistent (i.e., steady, consistent amount of time between heartbeats), the fatigue level may be higher. In other words, the body is less fresh and is not well-rested. When HRV is more sporadic (i.e., amount of time between heartbeats varies largely), the fatigue level may be lower. In various embodiments, the fatigue level is described in terms of an HRV score.

Method 1000 may measure HRV in a number of ways (discussed above in reference in to FIG. 1). For example, in one embodiment, method 1000 measures HRV using the combination of wrist biosensor 210 and finger biosensor 220. Wrist biosensor 210 may, for example, measure the heartbeat in the wrist of one arm while finger sensor 220 measures the heartbeat in a finger of the hand of the other arm. This combination allows the sensors, which in one embodiment may be conductive, to measure an electrical potential through the body. In one embodiment, information about the electrical potential provides cardiac information (e.g., HRV, fatigue level, heart rate information, and so on) and such information is processed. In other embodiments, method 1000 measures the HRV using sensors that monitor other parts of the user's body, rather than the finger and wrist. For example, the sensor may monitor the ankle, leg, arm, or torso.

In one embodiment, method 1000 detects the fatigue level based solely on the HRV measured. In a further embodiment, the fatigue level is based on other measurements (e.g., measurements monitored at operation 1002). For example, the fatigue level may be based on the amount of sleep that is measured for the previous night, the duration and type of user activity, and the intensity of the activity that method 1000 may determine for a previous time period (e.g., exercise activity level in the last twenty-four hours). By way of example, the factors may include stress-related activities such as work and driving in traffic, which may generally cause a user to become fatigued. In some cases, method 1000 detects the fatigue level by comparing the HRV measured to a reference HRV. This reference HRV may be based on information gathered from a large number of people from the general public. In another embodiment, method 1000 determines the reference HRV based on past measurements of the user's HRV.

Method 1000, in other illustrative instances, detects the fatigue level once every twenty-four hours. This provides information about the user's fatigue level each day so that method 1000 may direct the user's activity levels accordingly. In one embodiment, the fatigue level is detected more or less often. Using the fatigue level, a user may determine whether or not an activity is necessary, the appropriate activity intensity, and the appropriate activity duration. For example, in deciding whether to go on a run, or how long to run, the user may want to use method 1000 to assess the user's current fatigue level. Then the user may, for example, run for a shorter time if the user is more fatigued, or for a longer time if the user is less fatigued.

Referring again to FIG. 10A, at operation 1008, method 1000 recommends an activity level based on the fatigue level and an archive. The archive includes historical information about the movement and the fatigue level. The archive, in one embodiment, further includes historical information about the user activity type and the user activity intensity. The archive may include information such as the user activity types a user has performed in the past, the duration of such participation, the user activity intensities associated with those user activity types, and so on. As such, method 1000 may process all of this information to generate metrics useful to guiding the user to effective activity types, activity intensities, activity durations, and fatigue levels. The archive may also include other historical information, such as historical information about the user's location, elevation, and other information available to the method 1000 (e.g., information monitored by sensors). In various embodiments, operation 1008 is performed by activity level recommendation module 806.

In one embodiment, the archive used to recommend the activity level in operation 1008 includes normative data on activity scores and fatigue. The normative data, in one embodiment, includes information collected from a group of people other than the user. The normative data may be averaged and method 1000 may use the normative data to recommend an activity level. This may be useful when, for example, there is no historical information about movement, activity scores, or fatigue level in the archive. This may be the case when, for example, the fitness monitoring device is new to the user.

The normative data, in one embodiment, is adjusted according to different possible sets of user information. For example, method 1000 may collect and average (or otherwise statistically analyze) the normative data. In one embodiment, method 1000 creates a user information multiplier based on a comparison of the normative data and the user information. Method 1000 may apply the user information multiplier to the normative data to adjust the normative data such that the normative data becomes specific to the user. For example, method 1000 may increase an average value of the normative data if the user is younger than the average group member from which the normative data was extracted, or may decrease the average for a user that is less active than the average group member from which the normative data was extracted.

Referring again to operation 1008, the recommended activity level is based on the fatigue level and the archive. The recommended activity level, in one embodiment, is a numerical value. For example, the recommended activity level may be 1,000. In another embodiment, the recommended activity level is descriptive, being selected from a category of activity levels. Such categories, in one embodiment, include not active, slightly active, moderately active, highly active, and extremely active. The recommended activity level may also be presented in the form of a color code or other graphic indicator.

In one embodiment, method 1000 recommends the activity level based on the user's past activity, including historical information about user activity type and user activity intensity, duration, and the user's past fatigue levels (associated with past measuring periods, for example). As such, method 1000 may recommend a goal for activity level that is specific to the user's patterns of activity and fatigue, as well as to the user's current level of fatigue. Moreover, when the archive includes normative data, method 1000 recommends activity level based on the normative data in addition to the historical data on activity and fatigue.

For example, if method 1000 detects a fatigue level that is higher than typical (compared to the archive's historical fatigue levels for the user), method 1000 may recommend an activity level that is lower than typical for the user. In one embodiment, method 1000 does this by creating a fatigue multiplier. The fatigue multiplier may include, for example, a ratio of the current fatigue level to average historical fatigue level. By contrast, if the fatigue level is lower than typical, method 1000 may recommend an activity level that is higher than typical. In other examples, the activity level is not inversely proportional to the fatigue level. In one embodiment, method 1000 detects the fatigue level each day. In this manner, method 1000 can recommend an activity level specific to the user's fatigue level for each day.

In one embodiment, at operation 1008, the recommended activity level is based on an anticipation of a future activity, and the future activity is anticipated based on the archive. In such an embodiment, method 1000 determines, from the archive, that the user has a higher level of activity than typical (e.g., greater user activity intensity or longer duration of activity types) for a particular day of the week relative to other days of the week. Method 1000 may recommend a higher activity level for that particular day. For example, method 1000 may determine from the archive that the user plays soccer for two hours each Tuesday night, and may adjust the recommended activity level upward on Tuesdays as a result. Method 1000 may adjust the activity score goal upward, for example, by the number of activity score points typically generated while the user is playing soccer. In other words, method 1000 may recommend an activity level that conforms to the user's desired and historical activity levels, having some days as more active and others as less active. In another embodiment, method 1000 does not conform to the user's schedule if to do so would not help the user perform at the user's peak performance level.

At operation 1008, in one case, method 1000 recommends the activity level based on an amount of sleep monitored from the previous night. For example, if at operation 1002, eight hours of sleep were monitored for the previous night, a high recommendation for activity level may be provided. This is because the user is likely well rested. In another example, if operation 1002 monitors only four hours of sleep, a lower recommendation for activity level may be provided. This is because the user is likely not as well rested.

Method 1000, in a further embodiment, recommends the activity level based on a long-term activity goal of the user. For example, the user may decide to train for and run a marathon. Method 1000 may receive program training goals and upcoming events from the user (e.g., through a user interface). Method 1000 may recommend activity levels that conform to a training regimen to achieve the training goals, for example to prepare the user for the marathon or other upcoming event. For example, method 1000 may recommend an activity level that requires the user to run a long distance on particular days, or to run at a particular pace (intensity or frequency) on certain days.

In one embodiment, the recommended activity level is based on an input from the user. In such an embodiment, the input specifies a targeted aggressiveness for achieving a performance goal of the user. For example, the user may indicate that the user would like to be very aggressive in achieving the user's performance goals. In response, method 1000 may offer recommended activity levels that are very high. This may push the user to achieve the user's performance goals more quickly.

The recommended activity level, in other instances, is based on the user's learned tendencies. In such instances, by way of the archive, method 1000 may learn that the user tends to, for example, be more fatigued on a certain day of the week, to be more fatigued after a certain amount of sleep, or to be more fatigued after achieving a particular activity score. As more information is recorded in the archive, method 1000 may continue to track patterns of activity and fatigue stored in the archive that allow method 1000 to learn the user's tendencies. Method 1000 may recommend activity levels based on the user's particular, learned tendencies.

In one embodiment, the recommended activity level is based on the user's learned capabilities. In such an embodiment, by way of the archive, method 1000 may learn that the user, for example, is capable of achieving a higher activity score on a particular day of the week, or after getting a certain amount of sleep, etc. As more information is recorded in the archive, method 1000 may refine analytical relationships between the user's achieved activity scores and other variables, such as scheduling, sleep, fatigue level, activity type, and so on. Such analytical relationships may provide the basis for method 1000 to learn the user's capabilities. Method 1000 may recommend activities levels based on such particular, learned capabilities of the user. In various embodiments, operation 1008 is performed by activity level recommendation module 806.

FIG. 11 is an operational flow diagram illustrating an example of a method 1100 for providing an intelligent goal recommendation for activity level. Method 1100 reminds the user of a scheduled upcoming activity or event (e.g., at operation 1104) and adjusts the recommended activity level based on the scheduled upcoming activity (e.g., at operation 1106). Method 1100 may also include all the operations of method 1000, in some cases.

At operation 1104, method 1100 reminds the user of a scheduled upcoming activity. In one embodiment, the scheduled upcoming activity was scheduled by the user. For example, the user may make plans to run a sprint triathlon on Saturday morning and schedule those plans in the fitness monitoring device using an interface. Taking the upcoming sprint triathlon into consideration, method 1100 may remind the user that the scheduled event is approaching starting several days before when the event will occur. This may allow the user to tailor the user's activity in the days or weeks before the event such that the user is in optimal condition for the upcoming event. In various embodiments, operation 1104 is performed by scheduling module 902.

At operation 1106, method 1100 adjusts the recommended activity level based on the scheduled upcoming activity. In the triathlon example, method 1100 may adjust the recommended activity levels for the days or weeks before the scheduled triathlon such that the user does not become overworked or underworked before or during the scheduled event. Moreover, in some cases, method 1100 adjusts the recommended activity level following a scheduled event. For example, if the user competes in a scheduled triathlon, method 1100 may adjust the recommended activity level downward following the event so that the user can rest and recover. In various embodiments, operation 1104 is performed by scheduling module 902.

FIG. 12 illustrates an example computing module that may be used to implement various features of the systems and methods disclosed herein. In one embodiment, the computing module includes a processor and a set of computer programs residing on the processor. The set of computer programs is stored on a non-transitory computer readable medium having computer executable program code embodied thereon. The computer executable code is configured to monitor a movement to determine a an activity score associated with the movement. The computer executable code is further configured to detect a fatigue level. The computer executable code is also configured to recommend an activity level based on the fatigue level and an archive. The archive includes historical information about the movement and the fatigue level.

The example computing module may be used to implement these various features in a variety of ways, as described above with reference to the methods illustrated in FIGS. 10A, 10B, 10C, and 11, and as will be appreciated by one of ordinary skill in the art.

As used herein, the term module might describe a given unit of functionality that can be performed in accordance with one or more embodiments of the present application. As used herein, a module might be implemented utilizing any form of hardware, software, or a combination thereof. For example, one or more processors, controllers, ASICs, PLAs, PALs, CPLDs, FPGAs, logical components, software routines or other mechanisms might be implemented to make up a module. In implementation, the various modules described herein might be implemented as discrete modules or the functions and features described can be shared in part or in total among one or more modules. In other words, as would be apparent to one of ordinary skill in the art after reading this description, the various features and functionality described herein may be implemented in any given application and can be implemented in one or more separate or shared modules in various combinations and permutations. Even though various features or elements of functionality may be individually described or claimed as separate modules, one of ordinary skill in the art will understand that these features and functionality can be shared among one or more common software and hardware elements, and such description shall not require or imply that separate hardware or software components are used to implement such features or functionality.

Where components or modules of the application are implemented in whole or in part using software, in one embodiment, these software elements can be implemented to operate with a computing or processing module capable of carrying out the functionality described with respect thereto. One such example computing module is shown in FIG. 12. Various embodiments are described in terms of this example-computing module 1200. After reading this description, it will become apparent to a person skilled in the relevant art how to implement the application using other computing modules or architectures.

Referring now to FIG. 12, computing module 1200 may represent, for example, computing or processing capabilities found within desktop, laptop, notebook, and tablet computers; hand-held computing devices (tablets, PDA's, smart phones, cell phones, palmtops, smart-watches, smart-glasses etc.); mainframes, supercomputers, workstations or servers; or any other type of special-purpose or general-purpose computing devices as may be desirable or appropriate for a given application or environment. Computing module 1200 might also represent computing capabilities embedded within or otherwise available to a given device. For example, a computing module might be found in other electronic devices such as, for example, digital cameras, navigation systems, cellular telephones, portable computing devices, modems, routers, WAPs, terminals and other electronic devices that might include some form of processing capability.

Computing module 1200 might include, for example, one or more processors, controllers, control modules, or other processing devices, such as a processor 1204. Processor 1204 might be implemented using a general-purpose or special-purpose processing engine such as, for example, a microprocessor, controller, or other control logic. In the illustrated example, processor 1204 is connected to a bus 1202, although any communication medium can be used to facilitate interaction with other components of computing module 1200 or to communicate externally.

Computing module 1200 might also include one or more memory modules, simply referred to herein as main memory 1208. For example, preferably random access memory (RAM) or other dynamic memory, might be used for storing information and instructions to be executed by processor 1204. Main memory 1208 might also be used for storing temporary variables or other intermediate information during execution of instructions to be executed by processor 1204. Computing module 1200 might likewise include a read only memory (“ROM”) or other static storage device coupled to bus 1202 for storing static information and instructions for processor 1204.

The computing module 1200 might also include one or more various forms of information storage mechanism 1210, which might include, for example, a media drive 1212 and a storage unit interface 1220. The media drive 1212 might include a drive or other mechanism to support fixed or removable storage media 1214. For example, a hard disk drive, a solid state drive, a magnetic tape drive, an optical disk drive, a CD or DVD drive (R or RW), or other removable or fixed media drive might be provided. Accordingly, storage media 1214 might include, for example, a hard disk, a solid state drive, magnetic tape, cartridge, optical disk, a CD or DVD, or other fixed or removable medium that is read by, written to or accessed by media drive 1212. As these examples illustrate, the storage media 1214 can include a computer usable storage medium having stored therein computer software or data.

In alternative embodiments, information storage mechanism 1210 might include other similar instrumentalities for allowing computer programs or other instructions or data to be loaded into computing module 1200. Such instrumentalities might include, for example, a fixed or removable storage unit 1222 and a storage interface 1220. Examples of such storage units 1222 and storage interfaces 1220 can include a program cartridge and cartridge interface, a removable memory (for example, a flash memory or other removable memory module) and memory slot, a PCMCIA slot and card, and other fixed or removable storage units 1222 and storage interfaces 1220 that allow software and data to be transferred from the storage unit 1222 to computing module 1200.

Computing module 1200 might also include a communications interface 1224. Communications interface 1224 might be used to allow software and data to be transferred between computing module 1200 and external devices. Examples of communications interface 1224 might include a modem or softmodem, a network interface (such as an Ethernet, network interface card, WiMedia, IEEE 802.XX or other interface), a communications port (such as for example, a USB port, IR port, RS232 port Bluetooth® interface, or other port), or other communications interface. Software and data transferred via communications interface 1224 might typically be carried on signals, which can be electronic, electromagnetic (which includes optical) or other signals capable of being exchanged by a given communications interface 1224. These signals might be provided to communications interface 1224 via a channel 1228. This channel 1228 might carry signals and might be implemented using a wired or wireless communication medium. Some examples of a channel might include a phone line, a cellular link, an RF link, an optical link, a network interface, a local or wide area network, and other wired or wireless communications channels.

In this document, the terms “computer program medium” and “computer usable medium” are used to generally refer to transitory or non-transitory media such as, for example, memory 1208, storage unit 1220, media 1214, and channel 1228. These and other various forms of computer program media or computer usable media may be involved in carrying one or more sequences of one or more instructions to a processing device for execution. Such instructions embodied on the medium are generally referred to as “computer program code” or a “computer program product” (which may be grouped in the form of computer programs or other groupings). When executed, such instructions might enable the computing module 1200 to perform features or functions of the present application as discussed herein.

The presence of broadening words and phrases such as “one or more,” “at least,” “but not limited to” or other like phrases in some instances shall not be read to mean that the narrower case is intended or required in instances where such broadening phrases may be absent. The use of the term “module” does not imply that the components or functionality described or claimed as part of the module are all configured in a common package. Indeed, any or all of the various components of a module, whether control logic or other components, can be combined in a single package or separately maintained and can further be distributed in multiple groupings or packages or across multiple locations.

Additionally, the various embodiments set forth herein are described in terms of exemplary block diagrams, flow charts and other illustrations. As will become apparent to one of ordinary skill in the art after reading this document, the illustrated embodiments and their various alternatives can be implemented without confinement to the illustrated examples. For example, block diagrams and their accompanying description should not be construed as mandating a particular architecture or configuration.

While various embodiments of the present disclosure have been described above, it should be understood that they have been presented by way of example only, and not of limitation. Likewise, the various diagrams may depict an example architectural or other configuration for the disclosure, which is done to aid in understanding the features and functionality that can be included in the disclosure. The disclosure is not restricted to the illustrated example architectures or configurations, but the desired features can be implemented using a variety of alternative architectures and configurations. Indeed, it will be apparent to one of skill in the art how alternative functional, logical or physical partitioning and configurations can be implemented to implement the desired features of the present disclosure. Also, a multitude of different constituent module names other than those depicted herein can be applied to the various partitions. Additionally, with regard to flow diagrams, operational descriptions and method claims, the order in which the steps are presented herein shall not mandate that various embodiments be implemented to perform the recited functionality in the same order unless the context dictates otherwise.

Although the disclosure is described above in terms of various exemplary embodiments and implementations, it should be understood that the various features, aspects and functionality described in one or more of the individual embodiments are not limited in their applicability to the particular embodiment with which they are described, but instead can be applied, alone or in various combinations, to one or more of the other embodiments of the disclosure, whether or not such embodiments are described and whether or not such features are presented as being a part of a described embodiment. Thus, the breadth and scope of the present disclosure should not be limited by any of the above-described exemplary embodiments. 

What is claimed is:
 1. An apparatus for providing an intelligent goal recommendation for activity level, the apparatus comprising: a movement monitoring module that monitors a movement to determine an activity score associated with the movement; a fatigue level module that detects a fatigue level; and an activity level recommendation module that recommends an activity level based on the fatigue level and an archive, the archive comprising historical information about the movement and the fatigue level.
 2. The apparatus of claim 1, wherein the archive comprises normative data on activity scores and fatigue; and wherein the activity level recommendation module recommends the activity level based on the normative data.
 3. The apparatus of claim 1, wherein the activity level recommendation module recommends the activity level in anticipation of a future activity; and wherein the activity level recommendation module anticipates the future activity based on the archive.
 4. The apparatus of claim 1, wherein the activity level recommendation module recommends the activity level based on the amount of sleep monitored by the movement monitoring module the previous night.
 5. The apparatus of claim 1, wherein the recommended activity level is based on a user's learned tendencies.
 6. The apparatus of claim 1, wherein the recommended activity level is based on a user's learned capabilities.
 7. The apparatus of claim 1, wherein the recommended activity level is a numerical value.
 8. The apparatus of claim 1, wherein the recommended activity level is selected from the group consisting of not active, slightly active, moderately active, highly active, and extremely active.
 9. The apparatus of claim 1, further comprising a scheduling module that reminds a user of an upcoming activity and adjusts the recommended activity level based on the upcoming activity.
 10. A method for providing an intelligent goal recommendation for activity level, the method comprising: monitoring a movement to determine an activity score associated with the movement; detecting a fatigue level; and recommending an activity level based on the fatigue level and an archive, the archive comprising historical information about the movement and the fatigue level.
 11. The method of claim 10, wherein the archive comprises normative data on activity scores and fatigue; and wherein the recommended activity level is based on the normative data.
 12. The method of claim 10, wherein the activity level is recommended in anticipation of a future activity; and wherein the future activity is anticipated based on the archive.
 13. The method of claim 10, wherein the recommended activity level is based on an amount of sleep monitored the previous night.
 14. The method of claim 10, wherein the recommended activity level is based on an input from a user, the input specifying a targeted aggressiveness for achieving a performance goal of the user.
 15. The method of claim 10, wherein the recommended activity level is based on a user's learned tendencies.
 16. The method of claim 10, wherein the recommended activity level is based on a user's learned capabilities.
 17. The method of claim 10, wherein the recommended activity level is a numerical value.
 18. The method of claim 10, wherein the recommended activity level is selected from the group consisting of not active, slightly active, moderately active, highly active, and extremely active.
 19. The method of claim 10, further comprising: reminding a user of a scheduled upcoming activity; and adjusting the recommended activity level based on the scheduled upcoming activity.
 20. A system for providing an intelligent goal recommendation for activity level, the system comprising: a processor; at least one computer program residing on the processor; wherein the computer program is stored on a non-transitory computer readable medium having computer executable program code embodied thereon, the computer executable program code configured to: monitor a movement to determine an activity score associated with the movement; detect a fatigue level; and recommend an activity level based on the fatigue level and an archive, the archive comprising historical information about the movement and the fatigue level. 